package com.tancire.net.service;

import com.tancire.net.domain.NetUser;

import java.util.List;

/**
 * 会员管理Service接口
 *
 * @author chenchao
 * @date 2022-11-06
 */
public interface INetUserService {
    /**
     * 查询会员管理
     *
     * @param id 会员管理主键
     * @return 会员管理
     */
    public NetUser selectNetUserById(Long id);

    /**
     * 查询会员管理列表
     *
     * @param netUser 会员管理
     * @return 会员管理集合
     */
    public List<NetUser> selectNetUserList(NetUser netUser);

    /**
     * 新增会员管理
     *
     * @param netUser 会员管理
     * @return 结果
     */
    public int insertNetUser(NetUser netUser);

    /**
     * 修改会员管理
     *
     * @param netUser 会员管理
     * @return 结果
     */
    public int updateNetUser(NetUser netUser);

    /**
     * 批量删除会员管理
     *
     * @param ids 需要删除的会员管理主键集合
     * @return 结果
     */
    public int deleteNetUserByIds(Long[] ids);

    /**
     * 删除会员管理信息
     *
     * @param id 会员管理主键
     * @return 结果
     */
    public int deleteNetUserById(Long id);

    /**
     * 根据微信id查询用户信息
     *
     * @param openid 微信唯一认证
     * @return 会员管理
     */
    public NetUser selectNetUserByOpenId(String openid);

    /**
     * 根据id 查询会员信息 【手机端】
     *
     * @param userId
     * @return
     */
    NetUser getUserInfoById(Long userId);

    /**
     * 更新会员头像
     *
     * @param userId
     * @param filePath
     */
    void updateNetUserAvatar(String userId, String filePath);

    /**
     * 绑定邀请码
     *
     * @param code
     * @return
     */
    int bindInviteCode(String code);

    /**
     * 根据账号查询会员信息
     *
     * @param account
     * @return
     */
    NetUser selectNetUserByAccount(String account);
}
